#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    getchar();
    while (n--) {
        string str;
        getline(cin, str);
        cout << str << endl
             << "AI:";
        for (int i = 0; i < str.size(); ++i) {
            // 大小写
            if (isupper(str[i]) && str[i] != 'I')
                str[i] = tolower(str[i]);
            else if (!isalnum(str[i])) // 预处理：把所有符号前加上空格，可以把符号和单词分开
            {
                str.insert(i, " ");
                i++;
            }
            if (str[i] == '?')
                str[i] = '!';
        }
        // 把预处理完的单词与符号全部加入ans数组中
        string ans[1000];      // 如果适用vector 会发生错误
        stringstream sin(str); // 适用stringstream流读入数据
        int i = 0;
        while (sin >> str) {
            ans[i] = str;
            i++;
        }
        int size = i;
        // 对于如果第一个字母是符号的特殊情况：符号前面本来是不需要加空格的，但是AI:后面必须加空格
        if (!isalnum(ans[0][0]))
            cout << " ";

        for (int i = 0; i < size; i++) {
            // 对于如果第一个字母是符号的特殊情况：符号前面不需要加空格
            if (!isalnum(ans[i][0]))
                cout << ans[i];
            else if (i + 1 < size && ans[i] == "can" && ans[i + 1] == "you") {
                cout << " I can";
                i++;
            }
            else if (i + 1 < size && ans[i] == "could" && ans[i + 1] == "you") {
                cout << " I could";
                i++;
            }
            else if (ans[i] == "I" || ans[i] == "me")
                cout << " you";
            else
                cout << " " << ans[i];
        }
        cout << endl;
    }
    return 0;
}
